package cn.edu.fzu.homemaking.service;

import java.util.List;

import cn.edu.fzu.homemaking.domain.dto.AssignLabels;
import cn.edu.fzu.homemaking.domain.dto.SysCompanyDTO;
import cn.edu.fzu.homemaking.domain.entity.SysCompany;
import cn.edu.fzu.homemaking.domain.enums.StatusEnum;
import cn.edu.fzu.homemaking.domain.vo.CountCompany;

/**
 * @author yifan
 * @date 2023/4/4
 */
public interface SysCompanyService {

    List<SysCompany> list(String name, String creditCode, String legalPerson, String businessLicense, String contact,
                          String phone, StatusEnum status, Long areaId, Long cityId, Long provinceId, Long labelId);


    void addCompany(String name, String creditCode, String legalPerson, String businessLicense, String contact,
                    String phone, Long areaId, String address);


    void assignLabels(AssignLabels assignLabels);


    void removeLabels(AssignLabels assignLabels);


    void updateCompany(Long id, String name, String creditCode, String legalPerson, String businessLicense,
                       String contact, String phone, StatusEnum status, Long areaId, String address);

    void assignLabel(Long companyId, Long labelId);

    void removeLabel(Long companyId, Long labelId);

    SysCompanyDTO getById(Long id);

    CountCompany countCompany();
}
